package com.ken.apollo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ken.apollo.domain.entity.MailSenderConfig;

import java.util.List;

/**
 * 邮件发送方配置Service接口
 *
 * @author Ken
 * @since 2025-08-25
 */
public interface MailSenderConfigService extends IService<MailSenderConfig> {
    
    /**
     * 获取默认的邮件发送方配置
     */
    MailSenderConfig getDefaultConfig();
    
    /**
     * 设置默认配置
     */
    boolean setDefaultConfig(Long id);
    
    /**
     * 根据条件查询配置列表
     */
    List<MailSenderConfig> listByCondition(String configName, String senderEmail, Boolean status);
    
    /**
     * 测试邮件发送配置
     */
    boolean testConfig(Long configId, String testEmail);
    
    /**
     * 更新配置状态
     */
    boolean updateStatus(Long id, Boolean status);
}